TOP

Kebab Case Функция для LibreOffice Calc

KEBABCASE() Описание

Функция KEBABCASE() предназначена для объединения слов через дефис, то есть в результате возвращается одно слово, например «kebab-case-function» .

Kebab Case разбивает строку слов, разделенных пробелами, дефисом, нижним подчеркиванием или изменением регистра букв, затем превращает эти слова в нижний регистр и объединяет их с помощью тире-разделителя ("-").

Функция KEBABCASE() может быть полезна в программировании для конвертации имен переменных в соответствии с принятыми правилами написания кода (coding conventions) .


StarBASIC код для функции Kebab Case

Вот код макроса для создания пользовательской функции, которая может преобразовывать текст в отдельные слова разделенные дефисом (Kebab Case) в программе LibreOffice Calc.

Откройте меню Tools - Macros - Edit Macros..., выберите Module1 и скопируйте следующий текст в модуль:

  1. Function KebabCase(ByVal str As StringAs String    
  2.   'moonexcel.com.ua  
  3.   Dim words As Variant    
  4.   Dim FCalc As Object  
  5.     
  6.   FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")  
  7.     
  8.   str = Replace(str,"-"," ")  
  9.   str = Replace(str,"_"," ")    
  10.   str = FCalc.callFunction("TRIM", Array(str))    
  11.   str = FCalc.callFunction("REGEX", Array(str,"([:lower:])([:upper:])","$1 $2","g"))  
  12.         
  13.   str   = LCase(str)    
  14.   words = Split(str," ")                
  15.         
  16.   KebabCase = Join(words,"-")    
  17. End Function  

Затем закройте Macro Editor, вернитесь к LibreOffice Calc и используйте нашу новую функцию в любой ячейке.

Использование расширения

Вы также можете воспользоваться функцией KEBABCASE() установив бесплатное расширение YouLibreCalc.oxt или его полнофункциональную версию YLC_Utilities.oxt .

После этого данная функция будет доступна во всех файлах, которые будут открыты в LibreOffice Calc.